using System;

namespace jQueryNET
{
	public class MenuItem
	{
		#region Public constructors

		/// <summary>
		/// 
		/// </summary>
		public MenuItem()
		{
            ChildItems = new MenuItemCollection();
			Enabled = true;
		}

		/// <summary>
		/// Initializes a new instance of the MenuItem class.
		/// </summary>
		/// <param name="text"></param>
		/// <param name="action"></param>
		public MenuItem(string text, string action) : this()
		{
			Text = text;
			Action = action;
		}

		/// <summary>
		/// Initializes a new instance of the MenuItem class.
		/// </summary>
		/// <param name="text"></param>
		/// <param name="action"></param>
		/// <param name="imageUrl"></param>
        public MenuItem(string text, string action, string imageUrl)
            : this()
		{
			Text = text;
			Action = action;
			ImageUrl = imageUrl;
		}
		#endregion

		#region Public properties
		/// <summary>
		/// 
		/// </summary>
		public string Text { get; set; }

		/// <summary>
		/// 
		/// </summary>
		public string Action { get; set; }

		/// <summary>
		/// 
		/// </summary>
		public bool Enabled { get; set; }

		/// <summary>
		/// 
		/// </summary>
		public string ToolTip { get; set; }
		
		/// <summary>
		/// 
		/// </summary>
		public bool Selected{ get; set; }
		
		/// <summary>
		/// 
		/// </summary>
		public bool Selectable { get; set; }

		/// <summary>
		/// 
		/// </summary>
		public string Value { get; set; }

		/// <summary>
		/// 
		/// </summary>
		public string ImageUrl { get; set; }

		/// <summary>
		/// 
		/// </summary>
		public MenuItemCollection ChildItems { get; private set; }

		#endregion
	}
}